package cn.net.Thread;
//测试多线程的创建方式2;实现Runnable接口
public class TestThread2 {
    public static void main(String[] args) {
        //先声明线程类，再创建线程对象
        MyRunnable target = new MyRunnable();
        //target.start();        MyRunnable target = new MyRunnable();没有start方法
        //5.2 问题:怎么把接口的实现类和Thread类绑定
        Thread t1 = new Thread(target);//传入线程对象
        Thread t2 = new Thread(target);//传入线程对象
        Thread t3 = new Thread(target);//传入线程对象
        t1.start();//0=Thread-0 ~~ 9=Thread-0v
        t2.start();
        t3.start();
        //8.修改线程名称--使用Thread类的含参构造
        Thread t4= new Thread(target,"杰克");//替换掉target
        Thread t5 = new Thread(target,"露丝");
       t4.start();
       t5.start();

    }
}
//1.先自定义多线程类,并实现Runnable接口。
// 方式2 接口实现类：implements Runnable
class MyRunnable implements Runnable{//实现接口后，会重写run方法
    @Override
    public void run() {
        //3.写业务,打印10次线程名称
        for(int i = 0; i< 10; i++){
            //问题:Runnable接口中,没有提供多余的方法维度只有一个run()
            //Thread.currentThread()获取当前正在执行业务的线程对象 getName()获取此线程对象的名称
            System.out.println(i+"="+Thread.currentThread().getName());
        }
    }

}